home *** CD-ROM | disk | FTP | other *** search
/ A.C.E. 3 / ACE CD 3.iso / files / docs / diskexpd.lha / DiskExpander.doc next >
Text File  |  1994-11-27  |  70KB  |  1,541 lines

  1.                /\______ ___/\_____  ________  __  /\ ž__
  2.               /  ___/ ¬Ž/ ¬// \__¬\ \_____ ¬\/ ¬\/  \|  |
  3.               \__ ¬\     /\__/ ¬|  \_ /    _/ |  \_ /Ÿ  |
  4.               | ¬|  œ  ›  \ ¬‘  |   //  \  \  |   /     |
  5.               Ž____/Ž__€  Ÿ_ Ž_____/ \__\  \____Œ__/\__
  6.               .::::::::::\__/\|::PRESENTS::\__/::::::::::.                                                                
  7.                                                                  
  8.                        Typed and edited by DIT FOR
  9.                             FIREFLASH-SkIdRoW
  10.                              
  11.                                 20-12-1993  
  12.  
  13.                            DISK EXPANDER V2.1
  14.  
  15.                              By SCHATZTRUHE
  16.  
  17.                             TABLE OF CONTENTS
  18.  
  19. 1. INTRODUCTION                                       PAGE
  20.  
  21. 1.1   About the program                                2
  22. 1.2   Remarks                                          3
  23. 1.3   Functional overview                              3
  24.  
  25. 2. INSTALLATION
  26.  
  27. 2.1   What to do before installation                   3
  28. 2.2   Installing the program                           4
  29. 2.2.1 Commodore`s installer                            4
  30. 2.2.2 Installation on a hard disk                      5
  31. 2.2.3 Installation on a floppy disk                    6
  32. 1.3   Copy protection                                  6
  33.  
  34. 3. USING DISKEXPANDER
  35.  
  36. 3.1 Basic concepts                                     7
  37. 3.2 Starting DiskExpander from the WorkBench          11
  38. 3.3 Starting DiskExpander from the Shell              15
  39. 3.4 Inserting DiskExpander into the Startup-Sequence  15
  40. 3.5 Technical background and restrictions             17
  41.  
  42. 4. THE COMPRESSION LIBRARIES
  43.  
  44. 4.1 Basic concepts                                    18
  45. 4.2 The EPU0 - library                                19
  46. 4.3 The EPU1 - library                                19
  47. 4.4 The NUKE - library                                20
  48. 4.5 The BLZW - library                                20
  49. 4.6 The FAST - library                                21
  50. 4.7 Additional libraries                              22
  51.  
  52. 5. THE UTILITY PROGRAMS
  53.  
  54. 5.1 Device Packer                                     22
  55. 5.2 DEStatistics                                      25
  56.  
  57. 6. MISCELLANEOUS
  58.  
  59. 6.1 Hints for using the program                       26
  60. 6.2 Special note to Kickstart 1.2/1.3 owners          28
  61. 6.3 Future enhancements                               28
  62. 6.4 Registration                                      29
  63.  
  64.                                  PAGE 1
  65.  
  66. 1. INTRODUCTION
  67.  
  68. 1.1 About the program
  69.  
  70.  Are you in need of more hard disk space? Have you been envying those
  71. high capacity hard disk drives available for IBM and highend Amiga's?
  72. Until now, the only solution has been a new, bigger hard disk or a
  73. special HD drive, both being rather expensive add ons for your computer.
  74.  
  75.  But now there is DiskExpander, a cheap alternative to the expensive ones
  76. mentioned before. DiskExpander can double the current capacity of your
  77. hard disk without the addition of any special hardware, consisting only
  78. of a software package. The secret behind this phenomenon is data
  79. compression. Any data that is written to disk undergoes a compression to
  80. 30% - 70% of its original size. When this data is needed again,
  81. DiskExpander decompresses it and puts it to its original form and size.
  82. All this happens automatically, hidden behind the multitasking system.
  83. Apart from a slight increase in access time, you will not notice any
  84. difference when using the programs and data.
  85.  
  86.  The reduction of disk space needed for a file is done by a number of
  87. highly optimized compression algorithms. These algorithms have been used
  88. on a lot of different computers for a long time and they have been proven
  89. to be reliable. To adjust DiskExpander to your personal needs, you may
  90. select whether compression shall be fast or efficient. Fast compression
  91. does not maximize data compression, while efficient compression takes
  92. more time. There are, of course, alternatives between these extremes.
  93.  
  94.  The compression algorithms are delivered in form of libraries. Recently,
  95. a version of these libraries called XKP has appeared to become the
  96. standard. These libraries have proven to be highly reliable and are being
  97. continuously being improved. A lot of XPK libraries are available on
  98. public domain disks, such as the Fred Fish series. DiskExpander supports
  99. this standard by using XPK libraries for packing and unpacking data. Some
  100. XKP libraries come along with DiskExpander, while a lot more can be
  101. installed from public domain disks. In addition, other common library
  102. formats are supported. This is explained in later chapters of this
  103. manual.
  104.  
  105.  DiskExpander and its utility programs have a workbench like graphical
  106. user interface which makes the program easy to use, even for people not
  107. so familiar with computers. All you have to do is tell DiskExpander which
  108. floppy or hard disk drive to compress. Anything else is done
  109. automatically. For advanced users there is a large number of parameters
  110. that can be changed to increase DiskExpander`s efficiency. The utility
  111. programs help you to easily compress already existing programs and data.
  112. Even whole hard disk full of files can be compressed, which provides you
  113. with a lot of free space.
  114.  
  115.  The program works well along with all devices of AmigaDOS. It is not
  116. limited to floppy disk or hard disks. Even normal floppy disks will have
  117. a capacity of about 1.5 MByte when compressed with DiskExpander. Now, a
  118. whole Workbench including fonts and printer drivers can be stored on just
  119. one disk.
  120.  
  121.                                  PAGE 2
  122.  
  123.  The program cannot be started from the delivered disk. It has to be
  124. installed, even if used on floppy disks only, to adjust the software to
  125. the existing hardware. Most of the installation process is done
  126. automatically using Commodore`s Installer. The installation process is
  127. described in Chapter 2.
  128.  
  129.  BEFORE USING DISKEXPANDER FOR COMPRESSION OF FLOPPY OR HARD DISKS,
  130. PLEASE READ THIS MANUAL CAREFULLY. This helps you avoid problems (e.g.
  131. loss of data) that might occur when the program is used in the wrong way.
  132.  
  133. 1.2 REMARKS
  134.  
  135.  On the program disk you will find a file called "Read.me!". Since the
  136. program is being constantly updated, this file contains information that
  137. was not available when this manual was printed. Please use it as an
  138. addendum to your manual. By clicking over the corresponding icon on the
  139. disk, the text is displayed on screen. You may also load the file into
  140. your favourite word processor or print it.
  141.  
  142. 1.3 FUNCTIONAL OVERVIEW
  143.  
  144.  DiskExpander is a software package consisting of three programs. The
  145. most important one is of course, the program "DiskExpander" itself. This
  146. program is used to select the DEVICES to be compressed. It also serves to
  147. setup the COMPRESSION LIBRARY and a number of other parameters. A
  148. detailed description of this program is found in Chapter 3 of this
  149. manual.
  150.  
  151.  The program "DevicePacker" preforms another important task. It
  152. compresses existing files, directories and even whole devices. This
  153. becomes necessary when there are already programs and data on the hard
  154. disk or floppy before DiskExpander is first used. DevicePacker helps you
  155. to compress these files.
  156.  
  157.  Finally, the utility program "DEStatistics" calculates the pack-rate
  158. achieved with DiskExpander. The program can return a statistics of a
  159. single file or a whole device, depending on what your imports are. The
  160. results can be displayed as text or graphically.
  161.  
  162.  The two utility programs DevicePacker and DEStatistics are explained in
  163. Chapter 5. In addition to these three programs mentioned above, the disk
  164. contains a lot of other files necessary for a correct use of DiskExpander
  165. (e.g. XPK - libraries and Commodore`s Installer).
  166.  
  167. 2. INSTALLATION
  168.  
  169. 2.1 What To Do Before The Installation
  170.  
  171.  DiskExpander cannot be run from the distribution disk as this contains
  172. an uninitialized version of the program. Before you can use the program,
  173. it has to be installed, even if you
  174.  
  175.                                  PAGE 3
  176.  
  177. want to use it with floppy disks only. For this purpose, the install
  178. program allows you to copy the program to a Workbench disk. If you want
  179. to do this, please make a backup copy of your Workbench disk before you
  180. start the installation. In order to install DiskExpander you have to
  181. rename the duplicate to "WorkbenchDE". This copy is used during the
  182. installation process. You should not use your original Workbench disk,
  183. because DiskExpander compresses the contents of the disk to save space
  184. that is needed for the DiskExpander files. Due to this compression, the
  185. Workbench disk will contain more free space after installation than it
  186. did before.
  187.  
  188.  IF YOU WANT TO USE DISKEXPANDER ON A HARD DISK, IT`S A GOOD IDEA TO MAKE
  189. A BACKUP OF ALL THE PROGRAMS AND DATA ON THE HARD DISK BEFORE THE
  190. INSTALLATION. The software market offers a lot of different programs for
  191. this purpose, but you may also use the program "HDBackup" which is
  192. included on the Workbench 2.0 disks. Please read the Amiga documentation
  193. for information about this program.
  194.  
  195.  You should also make regular backups of your hard disk after
  196. DiskExpander has been installed. Since a hard disk contains an enormous
  197. number of files, the loss of data due to a hardware or software failure
  198. can be serious and quite annoying. Hard disks are sensitive electronic
  199. products and can be easily be damaged. A regular backup keeps the
  200. consequences of such damage to a minimum.
  201.  
  202. 2.2 Installing The Program
  203.  
  204. 2.2.1 Commodore`s Installer
  205.  
  206.  The DiskExpander software package is installed using Commodore`s
  207. Installer.
  208.  
  209.  Start the installation process with a double-click over the icon
  210. "INSTALLHD" for installation on a hard disk or over the icon
  211. "INSTALLDISK" for installation on a floppy disk. If you close the
  212. installation to take place on a floppy disk, please use the backup copy
  213. of your Workbench disk mentioned earlier. After the chosen program is
  214. loaded, a window with the welcome message appears on screen. Below this
  215. message you will find an area which serves to select one of the three
  216. different installation modes.
  217.  
  218. NOVICE USER
  219.  
  220.  This setting is not used during the installation of DiskExpander and is
  221. therefore not an option.
  222.  
  223. INTERMEDIATE USER
  224.  
  225.  This setting allows you to influence some aspects of the installation
  226. process. You may select the select the target path to which the program
  227. is installed. Any other task is performed automatically by the Installer.
  228.  
  229. EXPERT USER
  230.  
  231.  This setting allows you to change some program parameters during the
  232. installation. You may specify which compression/decompression libraries
  233. should be installed with DiskExpander.
  234.  
  235.                                  PAGE 4
  236.  
  237.  You may also choose between Kickstart 1.3 colours and those of the new
  238. OS 2.x. The rest of the installation is similar to the selection
  239. "Intermediate User".
  240.  
  241.  The lower portion of the window contains four gadgets. The upper left
  242. one "PROCEED WITH INSTALL" starts the installation process while the
  243. upper one "ABORT INSTALL" aborts it. The two gadgets below are of little
  244. importance. The "ABOUT .." gadget displays information about the install
  245. program itself and the "HELP .." gadgets calls the online help function.
  246.  
  247.  Please select the desired mode of installation and then click over the
  248. gadget "PROCEED WITH INSTALL" to start. Another window is displayed.
  249. Please click again over the "PROCEED" gadget without changing any
  250. parameters in that window.
  251.  
  252.  Please note that the DiskExpander original disk must not be write
  253. protected during installation.
  254.  
  255. 2.2.2. INSTALLATION ON A HARD DISK
  256.  
  257.  The installation of DiskExpander on a hard disk requires that you have
  258. booted your system from the hard disk, before the installation process.
  259. The logical directories LIBS:, L:, and C: must be assigned correctly,
  260. which normally happens automatically when booting from a hard disk. If
  261. you have not already done this, please start the installation program by
  262. double clicking over the "INSTALLHD" icon.
  263.  
  264.  After the two welcome windows mentioned in the above paragraph, you are
  265. asked to enter your name and address. These data will be stored on the
  266. original program disk.
  267.  
  268.  Please enter your personal data correctly. This, together with returning
  269. the registration card, allows you to buy updates to future versions of
  270. the program containing additional features. Incorrect or incomplete
  271. entries are not acceptable.
  272.  
  273.  After entering your personal data, you can choose the directory in which
  274. DiskExpander and its utility programs shall be stored on the hard disk.
  275. You may, of course, create a new directory especially for that purpose
  276. using the Installer. The output directory "DISKEXPANDER" will be created
  277. automatically. Inputs like "WORK:" or "HD!:TOOLS" for superior drawers to
  278. the "DISKEXPANDER" one are sufficient. But that all subdirectories
  279. superior to "DISKEXPANDER" must exit before installation (e.g. "TOOLS" on
  280. HD1:). The program is then installed to "HD!:TOOLS/DISKEXPANDER".
  281.  
  282.  Having chosen the path, you may select any number of
  283. compression/decompression libraries to be installed with the program.
  284. This selection is only available to those who have chosen the "Expert
  285. User" installation mode. Otherwise, all the libraries will be installed
  286. automatically, which is recommended since the libraries do not use a lot
  287. of disk space.
  288.  
  289.  If you are an "Expert User" you may also choose whether the program
  290. icons shall be displayed in Workbench 1.3 or 2.x style. The install mode
  291. "Intermediate User" chooses the icons that match your current operating
  292. system version.
  293.  
  294.                                  PAGE 5
  295.  
  296.  After entering these parameters, the DiskExpander files will be copied
  297. to the chosen directory. If no error occurs during this copying process,
  298. the program will be in an executable state afterwards, and you may use it
  299. to compress files on your hard disk and floppy disks. This is explained
  300. in Chapter 4 of this manual.
  301.  
  302. 2.2.3. INSTALLATION ON A FLOPPY DISK
  303.  
  304.  The installation on a floppy disk is also handled by Commodore's
  305. Installer. Please remember to use a backup of your Workbench disk for
  306. installation. This copied disk must be named "WORKBENCHDE" for the
  307. process to work properly. If you do not know how to rename a disk please
  308. consult your AmigaDOS manual for the details. When you have copied and
  309. renamed the disk, start the installation with a double-click on the
  310. "INSTALLDISK" icon.
  311.  
  312.  After the two welcome windows mentioned in paragraph 2.1.1, you are
  313. asked to enter your name and address. These data will be stored on the
  314. original program disk.
  315.  
  316.  If you have chosen the option "EXPERT USER", you will now be able to set
  317. some program parameters. First you may select the compression libraries
  318. to be installed. Then you are asked whether you prefer the program icons
  319. to be displayed in Workbench 1.3 or 2.x style. The option "INTERMEDIATE
  320. USER" will not allow you to make these decisions. DiskExpander will be
  321. installed with all libraries and the icons that match your current
  322. operating system version.
  323.  
  324.  You are now asked to insert the copy of Workbench disk into a drive. The
  325. installation program will compress existing files on this disk to create
  326. space necessary for DiskExpander and its data files. Afterwards, the
  327. different programs belonging to the DiskExpander software package are
  328. copied to the disk, and the Startup-Sequence is modified. The
  329. installation is finished.
  330.  
  331.  You will now have an executable version of DiskExpander on the copy of
  332. Workbench disk. When booting the system using this workbench copy,
  333. DiskExpander will be started and preform its packing job. Please read
  334. Chapter 4 of this manual for further information.
  335.  
  336. 2.3 COPY PROTECTION
  337.  
  338.  Yes, the program DiskExpander does contain a copy protection. This copy-
  339. protection has been installed on demand of JAROSLAV MACHACEK, who
  340. developed the software. It took Jaroslav Machacek a lot of time and hard
  341. work to program DiskExpander, and he wants to protect his work from
  342. unauthorized copying this way.
  343.  
  344.  Fortunately, DiskExpander`s copy protection is a new and quite
  345. INTELLIGENT one, Which does not hinder the honest program owner from
  346. working with the software. You simply have to enter your name and address
  347. when the program is installed, as explained above. During the daily use
  348. of DiskExpander, the copy protection will be transparent to the user.
  349.  
  350.                                  PAGE 6
  351.  
  352.  Any major changes in DiskExpander`s configuration can make it necessary
  353. to use the original disk again. In this case, simply insert the original
  354. disk into the internal drive DF):, even when the drive`s LED is lit
  355. continuously. The program will continue to work then.
  356.  
  357.  It will be possible to use DiskExpander if you cannot find your original
  358. disk at the moment or if you click the gadget "Cancel" by mistake.
  359. Already compressed files will still be decompressed, but DiskExpander
  360. will not compress files anymore. However, during the next boot process,
  361. the original disk will be required.
  362.  
  363.  During disk use a requester may occur which asks you to insert the
  364. original program disk. Afterwards you are requested to insert your
  365. workbench copy again. In this case, remove the write protection of the WB
  366. disk shortly to avoid the insertion of the original disk every time you
  367. re-boot your system.
  368.  
  369.  If you want to compress a whole diskette with the "DEVICEPACKER" there
  370. may not be enough storage space left even for the condensed data. A 100
  371. percent full" diskette can not be packed with the "DEVICEPACKER". The
  372. maximum use for a diskette before packing is limited to 98 percent.
  373.  
  374.  Please note that the original program disk cannot be copied using the
  375. Workbench`s copy function, because some sectors on the disk are
  376. protected. To get a backup copy of your original disk, use the program
  377. DEBACKUP found on the original disk. This program uses Commodore`s
  378. Installer to copy all files from the original disk to a fresh formatted
  379. and empty disk, which must be named "DEBACKUP". This disk might become
  380. useful in case your original disk becomes unreadable due to physical
  381. damage. It will allow you to use DiskExpander for decompression of
  382. existing files. Registered program owners may order a new original disk.
  383. This requires returning the defective disk and the small fee of $5 to the
  384. Schatztruhe Gmbh. We will ship out the replacement within 3 days after
  385. receipt.
  386.  
  387. 3. USING DISKEXPANDER
  388.  
  389. 3.1. BASIC CONCEPTS
  390.  
  391.  After the successful installation, the different programs of the
  392. software package may be used. The main program called DiskExpander is
  393. found in the newly created directory of your choice on the hard disk or
  394. the floppy disk, depending on where you you installed the software. Use
  395. this program to select the drives to be compressed during future use.
  396. There are also some adjustable parameters which will be explained in the
  397. following paragraphs.
  398.  
  399.  DiskExpander can be run from the Workbench as well as from the Shell. In
  400. either case the same parameters will be required, through the input of
  401. these parameters will work different. Therefore the parameters will be
  402. explained with no regard to a specific input method (Workbench, Shell).
  403. Paragraphs 3.2 and 3.3 deal with the characteristics of a start from
  404. either Workbench or Shell.
  405.  
  406.  The different parameters available for configuring DiskExpander can be
  407. grouped into three categories. The first group contains parameters which
  408. are indispensable for the program to
  409.  
  410.                                  PAGE 7
  411.  
  412. work correctly. The devices to be compressed belong to this group, as
  413. well as the compression library to be used. The second group of
  414. parameters contains commands that DiskExpander shall execute on the
  415. specified device, such as installation or removal of compression routines
  416. to or from AmigaDOS. The third group provides a number of parameters
  417. which adjust DiskExpander to your personal needs. You may select whether
  418. data to be stored on a device should always be compressed, and whether
  419. the directory command reports the compressed file size or the original
  420. (decompressed) size.
  421.  
  422.  Since the parameters belonging to the first group are more important
  423. than the other ones, they will be explained first.
  424.  
  425. DEVICE
  426.  
  427.  The most important parameter is the selection of the device (floppy
  428. disk, hard disk ..) DiskExpander shall work on. Compression routines can
  429. be installed to and removed from this device at will. Any device similar
  430. to a floppy disk or a hard disk will work with DiskExpander. A more
  431. detailed specification is given in Chapter 3.5 "TECHNICAL BACKGROUND".
  432. When you have started DiskExpander using the graphical user interface,
  433. the device may be chosen from a list of all available devices.
  434.  
  435. LIBRARY
  436.  
  437.  This is another very important parameter . It is used to select the
  438. library that is used for compression and decompression on the selected
  439. device. Along with DiskExpander comes a number of these libraries
  440. suitable for different purposes. A list of advantages and disadvantages
  441. of those libraries is given in Chapter 4. Please note that the names of
  442. the libraries especially developed for DiskExpander (epu0 and epu1) must
  443. be written in lower case, whereas the names of the XPK libraries must be
  444. written in capitals. Here, too, the program allows you to select one
  445. library from a list of available ones using the mouse if the program uses
  446. the graphical user interface. If no library is chosen, the XPK library
  447.  
  448. NUKE is used as default. During our testing period, this library achieved
  449. the best results, especially in compression speed.
  450.  
  451. BLOCK
  452.  
  453.  This parameter determines the amount of memory used during the
  454. compression of a file. This memory is permanently used and can range from
  455. 2 to 60 KByte. The default is 10. A smaller Block value will use less
  456. memory, but compression speed and efficiency will also decrease. If you
  457. set Block to 20, exactly 2x20 KByte of RAM will be reserved for opening a
  458. file.
  459.  
  460. TABLE
  461.  
  462.  This is the maximum file size that DiskExpander can handle in multiples
  463. of Block. It`s important for managing the compressed files. Table may
  464. vary from 500 to 20000 with a default of 1000. As setting of, for
  465. example, Block = 20 and Table = 1000 results in a maximum file size of 20
  466. MByte (20x1000x1000).
  467.  
  468.                                  PAGE 8
  469.  
  470.  The following group of parameters contains the commands DiskExpander can
  471. execute:
  472.  
  473. INSTALL
  474.  
  475.  This command serves to install compression routines for the specified
  476. device into AmigaDOS. Using the default setting will result in
  477. compression of any file during a write process and decompression when a
  478. file is being read later.
  479.  
  480. REMOVE
  481.  
  482.  This command is used to remove a previously installed DiskExpander from
  483. a specified device. After this command is executed, no data will be
  484. compressed when written to the device. Please note that there will also
  485. be no decompression of files already packed, so these files cannot be
  486. read correctly without DiskExpander. If there are open files when this
  487. command is selected, the execution of the command is delayed until the
  488. files are closed. The compression routines will then be removed from
  489. AmigaDOS and the used memory will be released. A re-installation of
  490. DiskExpander on this device is only possible after this has been done
  491. successfully.
  492.  
  493. INFO
  494.  
  495.  This command gives you an overview of the current settings of
  496. DiskExpander concerning the specified device. It is only available from
  497. the Shell. When using the graphical user interface, the setting of all
  498. device is shown at startup.
  499.  
  500. MODIFY
  501.  
  502.  This command, too, is only available from the Shell. It serves to change
  503. settings of a device that has already been installed without having to
  504. specify all settings again. All parameters not changed will keep their
  505. values.
  506.  
  507.  There are also a few commands which allow you to adjust DiskExpander to
  508. personal needs. These are in detail:
  509.  
  510. UNPACK
  511.  
  512.  This is on by default. Any data from the specified device is
  513. decompressed during the loading process.
  514.  
  515. NO PACK
  516.  
  517.  Choosing this option prevents decompression of data read from the
  518. specified device. Its purpose is to allow copying of compressed data from
  519. one device to another without unpacking it.
  520.  
  521. PACK
  522.  
  523.  This option is on by default. Any data written to the specified device
  524. undergoes a compression before it is stored.
  525.  
  526. NO PACK
  527.  
  528.  Choose this option to prevent compression of data written to the
  529. specified device.
  530.  
  531.                                  PAGE 9
  532.  
  533. EXAMINE
  534.  
  535.  
  536.  "Examine" refers to the internal AmigaDOS command which is often
  537. abbreviated "Exam". This command calculates, for example, the length of a
  538. single file, and is used by the command "list c:dir" and others. Choose
  539. this option if you want any command displaying the size of a file to show
  540. the size of the decompressed (that means the virtual file size) file
  541. instead of the physical size. "Examine" is used by default. It makes
  542. determination of the file size a bit slower.
  543.  
  544. NO EXAMINE
  545.  
  546.  Choose the option if you want the "Examine" command to return the
  547. physical size of the compressed file instead of the decompressed file
  548. size.
  549.  
  550. EXNEXT
  551.  
  552.  The internal AmigaDOS command "ExNext" is similar to "Examine". It
  553. serves to determine the length of files. Unlike "Examine" is used to get
  554. the size of a group of files (i.e., all the files in a directory) as
  555. displayed by "dir" or "list". If "ExNext" is on, the size of the
  556. decompressed files are shown instead of the sizes of the physical disk
  557. files. The option on by default.
  558.  
  559. NO EXNEXT
  560.  
  561.  Use this command if you want the size of the compressed files to be
  562. displayed by commands like "list" or "dir".
  563.  
  564. HMODE
  565.  
  566.  This is a default setting. If HMode is on, DiskExpander checks whether
  567. the compressed part of a file is being written to disk is already bigger
  568. than the original file. In case this happens DiskExpander stops the
  569. compression and writes the file as a normal (decompressed) Amiga file.
  570. This option serves to prevent a second compression of an already packed
  571. file if this file is written again.
  572.  
  573. LMODE
  574.  
  575.  If this option is activated, there will be no check as done by "HMode".
  576. Any files written to the device is compressed by DiskExpander.
  577.  
  578.  More detailed information about DiskExpander, including some
  579. restrictions resulting from the technology used that are worth knowing,
  580. is given in Chapter 3.5 of this manual, it is strongly recommended to
  581. read that chapter, as this may prevent problems.
  582.  
  583.                                  PAGE 10
  584.  
  585. 3.2. STARTING DISKEXPANDER FROM THE WORKBENCH
  586.  
  587.  The graphical user interface that appears on screen when DiskExpander is
  588. started from the Workbench is the most comfortable way to use the
  589. program. In the centre of the Workbench screen a window opens. this is
  590. where different parameters may be set and also where commands can be
  591. executed.
  592.  
  593. *** See Fig 1 ***
  594.  
  595.  In the upper left corner of the window, there are five gadgets with the
  596. names "Unpack", Pack", "Exam", "Exnext" and NMode". They belong to the
  597. corresponding functions explained in the above paragraph. When there is a
  598. little tick next to the gadget, the function is activated. When the tick
  599. is missing, the corresponding opposite function is active ("No Unpack",
  600. "No Pack", "No Exam", " No ExNext" and "LMode").
  601.  
  602.  Right above the gadgets is a string gadget where you may specify the
  603. device for which all the parameters are set. To change this value, simply
  604. click over this area and change the text. Do not forget the colon at the
  605. end of the device name. Alternatively, you may click over the gadget
  606. "Devices" at the lower window border, which will display a list of
  607. available devices.
  608.  
  609. *** See Fig 2 ***
  610.  
  611.  In addition to the device name, the actual settings will be shown. A
  612. tick in the column named "U" means that the "Unpack" option is active for
  613. the corresponding device. The other options are treated in the same way.
  614. The order of options is the same as in the main window. You may select a
  615. device from this list using the mouse. The name of the device will then
  616. be shown in the string gadget.
  617.  
  618.  The string gadget "Library" is used to choose a compression library for
  619. the selected device. Please note that name of the XPK libraries must be
  620. typed in capitals and all others (epu0 and
  621.  
  622.                                  PAGE 11
  623.  
  624. epu1) must be typed in lower case. Again, there is a list of available
  625. libraries from which one library can be chosen via the mouse. Simply
  626. click the gadget "Library" at the lower window border.
  627.  
  628. *** See Fig 3 ***
  629.  
  630.  When this manual was ready for press, the XPK library NUKE produced the
  631. best compression results, so we made this library the default one. In the
  632. case this should change, the program will eventually use another default
  633. library.
  634.  
  635.  
  636.  There are also string gadgets for the parameters "Table" and "Block"
  637. which already contain the default values. For additional information, The
  638. current status of the selected device is shown in the last row. This is
  639. where you can see whether DiskExpander has already been installed on the
  640. device, or if it has been deactivated.
  641.  
  642.  DiskExpander's essential program functions, namely installation of
  643. DiskExpander's compressions routines for the selected device and removal
  644. of these routines from the selected device, are activated by the two
  645. gadgets !Install" and "Remove". Please note that removing the compression
  646. routines from a device take a delay of a few seconds, because
  647. DiskExpander checks whether there are any open files or not. If you want
  648. to install DiskExpander again on the same device, this is not possible
  649. until the delay is over. It is, of course, possible to use the selected
  650. device during the wait period.
  651.  
  652.  If you want to change some of a device's parameters, you may do this
  653. without having to remove DiskExpander from the device via the "Remove"
  654. gadget and then installing it again. All changes made to any device
  655. parameters are updated when you exit DiskExpander.
  656.  
  657.  A further special feature that is available when starting DiskExpander
  658. from the Workbench is to communicate with DiskExpander via ToolTypes.
  659. ToolTypes are program parameters that can be stored together with a
  660. program's icon. They are created using the Workbench function
  661. "Information". If you have not any experience in the use of ToolTypes,
  662. you should read the corresponding chapters of your Amiga manual first.
  663. DiskExpander supports the following Tooltypes:
  664.  
  665. DEVICE
  666.  
  667.  This is where you should enter the device, to which the given ToolTypes
  668. refer. The correct syntax is: DEVICE=RAD: (this will install DiskExpander
  669. to the device named RAD: or remove it from that device). This ToolType is
  670. absolutely essential for using DiskExpander with ToolTypes.
  671.  
  672.                                  PAGE 12
  673.  
  674. LIBRARY
  675.  
  676.  This ToolType is used to select a compression library for the selected
  677. device. Please use the following syntax: LIBRARY=NUKE (this will use
  678. library NUKE with the selected device). Do not forget to type the names
  679. of XPK libraries in upper case and the other libraries names in lower
  680. case. This is an indispensable ToolType.
  681.  
  682. BLOCK
  683.  
  684.  Use this ToolType to set the maximum size of one data block for
  685. compression and decompression. The default value is 10, which is
  686. equivalent to a size of 10 KByte.
  687.  
  688. TABLE
  689.  
  690.  Use this ToolType to set the maximum number of blocks a single file may
  691. consist of. This affects the parameter "Table" mentioned above. The
  692. default is 1000.
  693.  
  694. PACK
  695.  
  696.  Use this ToolType to activate or deactivate data compression on the
  697. selected device. Enter PACK=YES to enable compression and PACK=NO to
  698. disable it. Default is PACK=YES.
  699.  
  700. UNPACK
  701.  
  702.  This ToolType is similar to the last one. Use UNPACK=YES to enable data
  703. compression and UNPACK=NO to disable it. Default is UNPACK=YES.
  704.  
  705. EXAM
  706.  
  707.  Use EXAM=YES to enable the parameter "Examine" and EXAM=NO to disable
  708. it. Default is EXAM=YES
  709.  
  710. EXNEXT
  711.  
  712.  Use EXNEXT=YES to enable the parameter "ExNext" and EXNEXT=NO to disable
  713. it. Default is EXNET=YES.
  714.  
  715. MODE
  716.  
  717.  This ToolType chooses the compression mode. MODE=H selects HMode and
  718. MODE=L selects LMode. Default is MODE=H.
  719.  
  720. X
  721.  
  722.  This ToolType sets the left border of DiskExpander's window on the
  723. Workbench Screen. Please enter X=n, where n is a number.
  724.  
  725. Y
  726.  
  727.  This ToolType sets the upper border of DiskExpander's window on the
  728. Workbench screen. Please enter X=n, where n is a number. This ToolType,
  729. together with the last one, sets the upper left corner of the window.
  730.  
  731. INSTALL
  732.  
  733.  This ToolType activates DiskExpander for the selected device. The
  734. correct syntax is: INSTALL=YES. In case both parameters, INSTALL and
  735. REMOVE should have the value YES, DiskExpander checks whether the
  736. selected device has already been installed and will install the device
  737. only if it is inactive.
  738.  
  739.                                  PAGE 13
  740.  
  741. REMOVE
  742.  
  743.  This ToolType removes DiskExpander from the selected device. The correct
  744. syntax is: REMOVE=YES. In case both parameters, INSTALL and REMOVE should
  745. have the value YES, DiskExpander checks whether the selected device has
  746. already been installed and will remove the device only if it is active.
  747.  
  748.  
  749. OPENWINDOW
  750.  
  751.  This ToolType determines whether or not the graphical user interface
  752. will appear on screen. The commands INSTALL and REMOVE will have no
  753. effect unless OPENWINDOW has the value NO. Use the setting OPENWINDOW=YES
  754. if you want the graphical user interface to appear on the screen
  755. automatically.
  756.  
  757. BORDER
  758.  
  759.  If the list contains the ToolType BORDER, the appearance of the gadgets
  760. border will change. You may find this option useful when working with
  761. older versions of the Amiga operating system (up to Kickstart 1.3).
  762.  
  763.  Especially interesting is the possibility to install and remove devices
  764. without further communication between DiskExpander and the user, even
  765. without opening the user interface, simply via the ToolTypes INSTALL and
  766. REMOVE. You might expect to need different versions of DiskExpander on
  767. your floppy or hard disk if you want to provide INSTALL and REMOVE icons
  768. for any available device, but this is not necessary. All you need is a
  769. new "Project" icon for each of devices, in which you enter the ToolType
  770. and DiskExpander as the corresponding main program. A suitable icon is
  771. found on the program disk in the directory DEicons. Simply copy this file
  772. to your floppy or hard disk, create the ToolTypes and rename them.
  773.  
  774.  You may, of course, copy the file into the directory WBStartup, if you
  775. want automatic installation of DiskExpander after every boot (this
  776. requires AmigaOS 2.0 or newer). Please note that in this case
  777. DiskExpander will be installed at a point of time far at the end of the
  778. boot process, so it is necessary that all commands used before
  779. DiskExpander's installation are stored on a decompressed device. In this
  780. and similar cases, we recommend to leave the boot device decompressed.
  781.  
  782.  The last function not mentioned until now is the ability to
  783. automatically install the current values into the Startup-sequence, which
  784. ensures that DiskExpander will be run again after booting the computer.
  785. As this function is rather complex, we have spent a whole chapter (namely
  786. Chapter 3.5) to explain this part of the program. It comes right after
  787. the description of the use of DiskExpander from the shell.
  788.  
  789.                                  PAGE 14
  790.  
  791. 3.3 STARTING DISKEXPANDER FROM THE SHELL
  792.  
  793.  As an alternative to using DiskExpander from the Workbench, you may
  794. start it either from the Shell of from the AmigaDOS CLI. In these cases
  795. the program uses the following parameters:
  796.  
  797.  DISKEXPANDER DEVICE name  [PACK/!PACK]
  798.                            [UNPACK/!UNPACK]
  799.                            [EXAM/!EXAM]
  800.                            [EXNEXT/!EXNEXT]
  801.                            [HMODE//LMODE]
  802.                            [BLOCK size]
  803.                            [TABLE size]
  804.                            [LIBRARY name]
  805.                            [?/WB/INFO/MODIFY/REMOVE]
  806.  
  807.  The parameter order is of no importance, though we recommend to use the
  808. given order for clarity. The parameter "DEVICE" needs a second parameter
  809. "name", which must be the name of a hard disk partition, a floppy disk or
  810. a hard disk. The parameters "BLOCK" and "TABLE" need a numerical second
  811. parameter called "size". The parameters have been explained several times
  812. in this manual, so we refrain from doing this again here. It is important
  813. to use the "!" for a negation of the parameters which can be negated, so
  814. if you want to switch off the option PACK, you will have to use "!PACK".
  815.  
  816.  The command "?" lists all available program parameters. If you use the
  817. command "WB", the graphical user interface already explained in Chapter
  818. 3.2 will appear on screen even if you run DiskExpander from the shell.
  819.  
  820. 3.4 INSERTING DISKEXPANDER INTO THE STARTUP-SEQUENCE
  821.  
  822.  Since the program has to be installed newly after every boot of the
  823. computer, it is useful to have this done automatically. An integration of
  824. DiskExpander into the Startup-sequence is the most practical way to
  825. achieve this, since the Startup-Sequence is, in fact, started after every
  826. boot. All you have to do is insert the command for starting DiskExpander
  827. in the Startup-Sequence, preferably at the beginning. You may do this
  828. using a text editor like AmigaDOS ED. A more convenient way, however, is
  829. to use a function we have integrated into the DiskExpander main program
  830. exactly for that purpose.
  831.  
  832.  This function is called "Modify Startup" and can be reached via the
  833. graphical user interface. You may have already noticed the corresponding
  834. gadget. Use it to have modifications to the Startup-Sequence done
  835. automatically. To achieve more flexibility, we have included several
  836. programs options that can be called by a pulldown menu in the graphical
  837. user interface.
  838.  
  839.                                  PAGE 15
  840.  
  841. *** See fig 4 ***
  842.  
  843. The following seven options are available
  844.  
  845. DISPLAYED PARAMETERS ....
  846.  
  847.  Use this option to have only those parameters in the Startup-Sequence
  848. that refer to the device momentary displayed in the user interface.
  849. Parameters are taken directly from the user interface and written to the
  850. Startup-Sequence. the selected device does not have to be installed. This
  851. option is automatically activated when the program is started.
  852.  
  853. INSTALLED PARAMETERS ....
  854.  
  855.  Use this option to add all installed devices to the Startup-Sequence. We
  856. recommend to use this kind of installation when there is a large number
  857. os installed devices whose parameters have to be added to the Startup-
  858. Sequence.
  859.  
  860. REMOVE ALL ....
  861.  
  862.  If you choose this option and then click over the "Modify Startup" -
  863. gadget, all existing DiskExpander entries will be removed from the
  864. Startup-Sequence before any changes are made. Then, the, new entries are
  865. added to the Startup-Sequence. In case neither of the first two options
  866. is marked with a tick, this option just removes all existing DiskExpander
  867. entries from the Startup, without writing new ones.
  868.  
  869. REMOVE SELECTIVE ....
  870.  
  871.  When this option is active, DiskExpander removes only those entries from
  872. the Startup-Sequence, that will be newly installed. This is the default
  873. setting.
  874.  
  875.  The next three parameters are used to tell DiskExpander where to insert
  876. the entries into the Startup-Sequence:
  877.  
  878. INSERT AFTER MOUNT OR AS FIRST LINE ....
  879.  
  880.  This setting can be used for devices that are installed in the Startup-
  881. Sequence via the command MOUNT. In this case, the corresponding
  882. DiskExpander call must be inserted after the MOUNT command. The option is
  883. used for devices installed using MOUNT as well as for devices that do not
  884. need "mounting". If there's a MOUNT for the selected device, DiskExpander
  885. will insert the entry after the mount. If no MOUNT exists, the entry will
  886. be inserted at the beginning of the Startup-Sequence. This is the default
  887. setting.
  888.  
  889.  INSERT AFTER MOUNT OR NOWHERE ....
  890.  
  891.  This option is similar to the one mentioned before. Installation entries
  892. will be inserted after the device's MOUNT. If there is no such MOUNT, the
  893. device will not be inserted.
  894.  
  895.                                  PAGE 16
  896.  
  897. INSERT AS 1ST LINE ....
  898.  
  899.  The use of this option forces DiskExpander to insert its installation
  900. entries at the beginning of the Startup-Sequence.
  901.  
  902.  The combination of these options provided any reasonable possibility of
  903. an installation DiskExpander into the Startup-Sequence.
  904.  
  905. 3.5. TECHNICAL BACKGROUND AND RESTRICTIONS
  906.  
  907.  DiskExpander is basically a program that modifies parts of AmigaDOS to
  908. the affect that all data undergoes a compression when being saved and a
  909. decompression when restored later. This process is, of course, invisible
  910. to the user. DiskExpander has to be started after every boot of the
  911. computer. How this can be done automatically was explained in the
  912. previous paragraph about adding DiskExpander to the Startup-Sequence.
  913.  
  914.  Internally, the program hooks itself to the AmigaDOS and watches data
  915. input and output. DiskExpander catches any access to a packed device and
  916. uses its compression routines instead of the original AmigaDOS functions.
  917. This is, as mentioned before, invisible to the user. Apart from a slight
  918. increase in access time due to the compression, the user will not notice
  919. any difference. This technique works well along with existing Amiga
  920. software, and the amount of memory needed for that purpose is a few
  921. KBytes, which is obviously not very much, but this is explained in
  922. further detail in Chapter 5.
  923.  
  924.  When a compressed file is being written to disk,DiskExpander also stores
  925. the name of the compression algorithm and the chosen parameters. In case
  926. you change the DiskExpander setup, you will still be able to restore the
  927. old files, because DiskExpander knows which compression library and which
  928. parameters to use. If you later save or overwrite the file, DiskExpander
  929. will use the new library and the new parameters automatically.
  930.  
  931.  There are also some restrictions which must be taken into account to
  932. guarantee a problem free working of the program. The most important
  933. restriction is the one already mentioned: DiskExpander has to be started
  934. after every boot of the computer. This is normally an automatic
  935. procedure, but will only work if all files loaded before the execution of
  936. the Startup-Sequence are stored in an decompressed way, the Startup-
  937. Sequence itself and all the files belonging to the DiskExpander software
  938. package (DiskExpander, handlers, libraries). If any of these files
  939. undergo a compression, the operating system will not be able to execute
  940. them correctly during a boot process. However, no data will be lost due
  941. to these faults. If this problem occurs, just start DiskExpander
  942. manually, switch off the option "Pack" for the boot device, and use the
  943. utility program "DevicePacker" to decompress the files. After this
  944. procedure, everything should work normally.
  945.  
  946.  We describe the method of packing all files except vital ones for
  947. booting the computer in Chapter 6 "Miscellaneous". Another possibility
  948. especially for hard disk owners is to create a boot partition which
  949. contains all necessary data for the setup process in uncompressed form
  950. and eventually several data partitions which can be furnished with the
  951. DiskExpander at will.
  952.  
  953.                                  PAGE 17
  954.  
  955.  Another restriction refers to the devices that can be compressed. It is
  956. only possible to pack devices whose structure is similar to the one of a
  957. floppy disk or hard disk. This means the devices must have an input as
  958. well as an output. It is not possible to pack a device such as a printer.
  959. In technical terms, this means that the devices must support AmigaDOS
  960. commands SEEK and LOCK. The condition is fulfilled by floppy disks, hard
  961. disks and most ram disks. The RAM: (AmigaOS version 2.0 and higher) and
  962. the device PC0: are not yet supported by DiskExpander and thus may not be
  963. compressed.
  964.  
  965.  During the use of DiskExpander, two additional AmigaDOS errors may
  966. occur:
  967.  
  968. ERROR_BAD_FILE
  969. ERROR:FILE FORMAT INVALID OR WRONG
  970. CODE:3020
  971. This error occurs when DiskExpander is not able to handle a compressed
  972. file due to physical or logical error on the device.
  973.  
  974. ERROR_OPEN_IMPOSSIBLE
  975. ERROR: UNABLE TO OPEN FILE
  976. CODE :3201
  977. This error occurs during the attempt to open a file, when there is either
  978. not enough memory to allocate, or when the chosen compression library is
  979. not found.
  980.  
  981.  
  982.                       4. THE COMPRESSION LIBRARIES
  983.  
  984. 4.1 BASIC CONCEPTS
  985.  
  986.  DiskExpander does not contain a fixed number of pack algorithms firmly
  987. built into the program. The program uses a variable number of external
  988. libraries for compression purposes instead. This allows you to use
  989. different algorithms for different purposes, which provides you with
  990. optimal solutions for your specific problems. In Chapter 3 of this
  991. manual, the selection of a pack library for a device was explained. The
  992. following paragraphs will aid you to choose the right library by listing
  993. the advantages and disadvantages of the libraries that come along with
  994. DiskExpander.
  995.  
  996.  The different libraries are stored in the logical directory LIBS:, the
  997. same directory they are copied to during the installation process. When
  998. DiskExpander is installed to a Workbench disk, there will also be a
  999. directory LIBS: containing the libraries. A hard disk containing an
  1000. installed version of DiskExpander will have the libraries stored in a
  1001. directory LIBS: on the correct partition.
  1002.  
  1003.  As mentioned a few times before, DiskExpander can be used with a large
  1004. number of libraries fulfilling the XPK standard. The XPK standard was
  1005. developed by Urban Dominik Mueller, Bryan Ford and others. The
  1006. compression routines implemented in these libraries can be used for a lot
  1007. of purposes. You may use them in nearly every programming language, even
  1008. in AmigaBASIC, if you need compression routines in your own programs. For
  1009. this purpose we
  1010.  
  1011.                                  PAGE 18
  1012.  
  1013. have stored further information on the XPK standard and the libraries on
  1014. the DiskExpander disk. You will find detailed documentation and
  1015. information on how to call the pack routines from a programming language.
  1016. The informational files are stored in the form of a LHA file and must be
  1017. unpacked before you can use them. Due to copyright reasons, the well
  1018. known LHA packer needed for that purpose is not part of the DiskExpander
  1019. package. If you are in need of this packer, please take a look at some PD
  1020. disks or download it from a mailbox. The complete XPK package is found on
  1021. Fish disk 754. The XPKMaster library normally needed for the use of other
  1022. XPK libraries is not necessary for the use of the libraries with
  1023. DiskExpander.
  1024.  
  1025. 4.2. THE LIBRARY EPU0
  1026.  
  1027.  The library EPU0 was developed especially for use with DiskExpander. It
  1028. is based on the LZSS algorithm, and its performance values are average.
  1029. The algorithm uses a slow compression, but is fast enough for using with
  1030. DiskExpander. The compression rate (the disk space gained by compression
  1031. compared to the original file size) is also not the possible maximum, but
  1032. quite useful depending on the format of the file to be compressed.
  1033.  
  1034.  There are better algorithms available as XPK libraries in term of speed
  1035. as well as compression efficiency. Since the library EPU0 does not need
  1036. much main memory as more efficient algorithms do, it may often be the
  1037. best choice.
  1038.  
  1039.  The EPU libraries are not part of the XPK package. They differ
  1040. internally from the XPK standard and may thus not be used in self-written
  1041. programs the way it is explained in the XPK package.
  1042.  
  1043.  Please note the name of this library must be typed in lower case when
  1044. using it with DiskExpander.
  1045.  
  1046. 4.3. THE LIBRARY EPU1
  1047.  
  1048.  In addition to the library EPU0 there is another library called EPU1
  1049. that was developed especially for use with DiskExpander. Unlike library
  1050. EPU0, EPU1 is not a stand-alone compression library. It is used to
  1051. provide an interface to the pack routines of the LH.library.
  1052.  
  1053.  The LH.library was developed by O.Barthel and P.Krekel and is not part
  1054. of the DiskExpander package due to copyright reasons. You will find this
  1055. library on PD disks (e.g. Fish 436). The LH.library contains a highly
  1056. optimized Assembler version of compression routines used by the well
  1057. known LHArc packer. The implementation of the Lzhuf algorithm has a very
  1058. high compression rate and also excellent compression speed. For this
  1059. reason, we have chosen to support the indirect use of this algorithm by
  1060. DiskExpander.
  1061.  
  1062.  On Fish disk 436 you will find further information on the algorithm and
  1063.  
  1064. some example programs that will help you use the LH/library in your own
  1065. programs.
  1066.  
  1067.                                  PAGE 19
  1068.  
  1069.  
  1070.  The name of the library EPU1 must also be typed in lower case to provide
  1071. correct operation of DiskExpander.
  1072.  
  1073. 4.4. THE LIBRARY NUKE
  1074.  
  1075.  NUKE is an XPK library that contains a highly optimized implementation
  1076. of the well known LZ77 algorithm. This algorithm. This algorithm is used
  1077. in a large number of other packers, such as PowerPacker or Imploder.
  1078.  
  1079.  The aim in developing this library was to provide efficient compression
  1080. and fast decompression. The basic idea behind this packer was that most
  1081. files are compressed only once and then decompressed (during read) a lot
  1082. of times. Actually, this packer is excellent in regard to speed and
  1083. efficiency, though not necessarily the optimal packer currently
  1084. available. Data compression is not that fast, but the performance values
  1085. are still good.
  1086.  
  1087.  To achieve these excellent compression rates, a large memory block has
  1088. to be searched for identical byte sequences. If this search is
  1089. successful, the position at which the sequence occurred together with the
  1090. size of the sequence is saved, rather than the bytes themselves.
  1091. Naturally this kind of search takes a lot of processor performance and
  1092. also a lot of main memory. The developer of this library was able,
  1093. though, to produce a polished implementation of the algorithm and thus
  1094. achieves a compression speed of 35KByte per second on an Amiga 3000. As
  1095. the algorithm needs a lot of main memory, this library should not be used
  1096. on systems having less than 1 MByte RAM. Owners of 512K computers should
  1097. use the EPU0-library or avoid extensive use of the multitasking system.
  1098.  
  1099.  To allow easy comparison of the different libraries belonging to the XPK
  1100. package, performance statistics are given for each library. These
  1101. statistics were produced using the standard XPK benchmark system
  1102. (A3000/25 with SCRAM, compression of the AmigaVision program).
  1103.  
  1104.  METHOD     PACKING    UNPACKING   PACKING   UNPACKING   COMPRESSION
  1105.             MEMORY     MEMORY      SPEED     SPEED       RATIO
  1106.  
  1107.  NUKE       192K       0K          35 K/s    613 K/s     45.2%
  1108.  
  1109.  Please note that the name of the library NUKE, as well as the names of
  1110. the other XPK-libraries, must be typed in capitals when used with
  1111. DiskExpander.
  1112.  
  1113. 4.5. THE LIBRARY BLZW
  1114.  
  1115.  The XPK library BLZW is a highly optimized implementation of the popular
  1116. LZW compression algorithm, also used in packers like ARJ and ZOO.
  1117.  
  1118.  While a lot of known XPK libraries were developed for fast data
  1119. compression by assuming that most files are compressed only once and
  1120. decompressed often, BLZW provides a high compression speed as well. This
  1121. ability is highly interesting for an application like DiskExpander.
  1122.  
  1123.                                  PAGE 20
  1124.  
  1125.  Thus, the library BLZW is an interesting alternative for those devices,
  1126. where a lot of files are saved again and again, mainly data disks or hard
  1127. disk partitions used for data storage. In those cases, we recommend the
  1128. use of this library to avoid long waiting periods when saving files.
  1129.  
  1130.  We have a performance statistics for this library as well. The
  1131. statistics were produced with the standard XPK benchmark system.
  1132.  
  1133.  METHOD     PACKING    UNPACKING   PACKING   UNPACKING   COMPRESSION
  1134.             MEMORY     MEMORY      SPEED     SPEED       RATIO
  1135.  
  1136.  BLZW       30K        16K         134 K/s   356 K/s     32.4%
  1137.  
  1138.  Please note that the name of the library BLZW, as well as the names of
  1139. the other XPK-libraries, must be typed in capitals when used with
  1140. DiskExpander.
  1141.  
  1142. 4.6. THE LIBRARY FAST
  1143.  
  1144.  The library FAST is another part of XPK package. Its main purpose is to
  1145. be especially fast. Based on the LZRW1 compression routines (belonging to
  1146. the family of LZ77-packers), this library actually achieves enormous
  1147. speed in decompression, which makes it highly desirable for use with
  1148. DiskExpander.
  1149.  
  1150.  In comparison to NUKE, the library FAST package achieves two times
  1151. NUKE's decompression speed. Unfortunately a final version of the library
  1152. FAST was unavailable when this manual was printed. Our test version only
  1153. managed to pack about 20 KByte per second, but this should change in the
  1154. final version, which may be included with DiskExpander. The programmer's
  1155. goal is a compression rate of about 50 - 60 KByte per second, which would
  1156. be double the compression speed of NUKE.
  1157.  
  1158.  The following performance statistics are presented in order to allow a
  1159. comparison between FAST and the other XPK libraries. The statistics were
  1160. produced with the standard XPK benchmark system. Please not that
  1161. performance values may change in the final version of this library.
  1162.  
  1163.  METHOD     PACKING    UNPACKING   PACKING   UNPACKING   COMPRESSION
  1164.             MEMORY     MEMORY      SPEED     SPEED       RATIO
  1165.  
  1166.  FAST       96         0K          426 K/s   1048 K/s    32.7%
  1167.  
  1168.  
  1169.                                  PAGE 21
  1170.  
  1171. 4.7. ADDITIONAL LIBRARIES
  1172.  
  1173.  There is the possibility that some new pack algorithms will become
  1174. available after this manual has been printed. In order to make them
  1175. available to you, we will include them into the DiskExpander package as
  1176. long as copyright makes this possible. They will be stored on the program
  1177. disk; a documentation of the new libraries will be found in a file called
  1178. "Read.me!". Please read this file in any case, because it may contain
  1179. valuable information you will not find in this manual.
  1180.  
  1181.  For this reason, a general recommendation for one specific pack library
  1182. is not possible. When this manual was ready for press, the library FAST
  1183. was not available in a final version, so the XPK library NUKE produced
  1184. the best results in speed as well as in compression rate. Following is a
  1185. summary of the different XPK libraries that come along with DiskExpander.
  1186.  
  1187.           COMPRESSION RATE  COMPRESSION SPEED  DECOMPRESSION SPEED
  1188.  
  1189.  NUKE     +                 +                  ++
  1190.  BLZW     0                 ++                 +
  1191.  FAST     +                 0                  ++
  1192.  
  1193.           0 = AVERAGE       + = GOOD           ++ = EXCELLENT
  1194.  
  1195.                          5. THE UTILITY PROGRAMS
  1196.  
  1197. 5.1. DEVICEPACKER
  1198.  
  1199.  The utility program DevicePacker included in the DiskExpander software
  1200. package was developed to allow compression of program and data files
  1201. already stored on a device before the installation of DiskExpander. It is
  1202. also possible to use the program for a data decompression or to compress
  1203. the existing files using another library.
  1204.  
  1205.  DevicePacker creates a copy of the given file. This file may be stored
  1206. in compressed or decompressed form, depending on the chosen parameters.
  1207. The original file will be deleted afterwards, but the program is not
  1208. limited to work on single files. You may use it on directories (including
  1209. subdirectories, if you want to) and even whole devices.
  1210.  
  1211.  As mentioned before, DevicePacker needs DiskExpander to work correctly.
  1212. Without DiskExpander already installed, DevicePacker is neither able to
  1213. compress files nor to decompress them.
  1214.  
  1215.  DevicePacker can be run from the Workbench as well as from the Shell.
  1216. When running the program from the Workbench, a graphical user interface
  1217. appears on the screen, which allows a comfortable use of the program via
  1218. the mouse. The same user interface will appear when the program is run
  1219. from the Shell without any parameters.
  1220.  
  1221.                                  PAGE 22
  1222.  
  1223. *** See fig 5 ***
  1224.  
  1225.  The most important program parameters is the path to be compressed. You
  1226. will find a string gadget in the user interface for that purpose. You may
  1227. enter a directory name as well as a single file name into the gadget. It
  1228. is not necessary to type the file or directory name; you can also click
  1229. over the gadget left to the string gadget. A small file requester will be
  1230. activated which allows you to choose the directory using the mouse. This
  1231. file requester will be either the one included in the ASL library (or the
  1232. ARP requester, if you are running Kickstart 1.2/1.3). If none of the two
  1233. file requesters is available, the corresponding gadget cannot be chosen.
  1234.  
  1235. *** See fig 6 ***
  1236.  
  1237.  When the path is selected, the gadget "Process files" can be activated,
  1238. which starts the desired action for the chosen file or path. The status
  1239. line displays the file actually handled. After all files have been
  1240. handled, you may start the process again on another path, or you may exit
  1241. the program by clicking on either the gadget "Quit program" or the close-
  1242. gadget in the upper left corner of the window.
  1243.  
  1244.  In addition to the gadgets found in the user interface, the following
  1245. functions are also accessible via the program menu.
  1246.  
  1247.  "Include Subdirs" in the menu "Preferences" selected whether
  1248. DevicePacker shall automatically handle subdirectories of the selected
  1249. directory. The option is on by default.
  1250.  
  1251.                                  PAGE 23
  1252.  
  1253.  "Forbidden files" allows or forbids DevicePacker to create new versions
  1254. of those files that must not be compressed by DiskExpander (as explained
  1255. in Chapter 3.3.). this option is off by default (no tick next to the menu
  1256. option). In case any of these files has been compressed by mistake, you
  1257. will have to turn this option on and decompress the files again using
  1258. DevicePacker.
  1259.  
  1260.  When the program is started from the Shell, it demands the path to deal
  1261. with as command line parameter. If the additional parameter "ALL" is
  1262. entered, DevicePacker will handle everything, including the
  1263. subdirectories. In case no parameters are given, the graphical user
  1264. interface appears on the screen. The parameter "?" returns a list of
  1265. parameters possible at start from the Shell.
  1266.  
  1267.  To compress files already stored on a device please do the following:
  1268.  
  1269.  - Start DiskExpander from the selected device. The parameter "PACK" must
  1270.    be activated. The other parameters are not important, but we recommend
  1271.    not to change them the first time.
  1272.  
  1273.  
  1274.  - Start the program DevicePacker, preferably from the workbench, and
  1275.    select the device.
  1276.  
  1277.  - Start the compression process by clicking on the gadget "Process
  1278.    files".
  1279.  
  1280.  - When the compression is finished you may exit DevicePacker.
  1281.  
  1282.  If no errors occurred during this process, all files on the selected
  1283. device are now stored in a compressed form. Please note that you cannot
  1284. read these files without DiskExpander installed.
  1285.  
  1286.  If you want to decompress all files that were previously compressed with
  1287. DiskExpander, you can also use DevicePacker. The procedure is as follows.
  1288.  
  1289.  - Start DiskExpander for the selected device. The parameters "PACK" must
  1290.    be turned off, while "UNPACK" must still be turned on. All other
  1291.    parameters are unimportant and should keep there values.
  1292.  
  1293.  
  1294.  - Start the program DevicePacker, preferably from the workbench, and
  1295.    select the device, the directory or even a single file.
  1296.  
  1297.  - Start the decompression process by clicking on the gadget "Process
  1298.    files".
  1299.  
  1300.  This might be useful when the Startup-sequence or the System-
  1301. Configuration have been compressed by mistake. Use this function to
  1302. cancel the mistake without loss of data.
  1303.  
  1304.  Another purpose of DevicePacker is to pack files that have already been
  1305. packed before. This is useful when a new pack library is invented that
  1306. gives better results in speed or efficiency, but your files are already
  1307. compressed with an older library. in this case, do the following:
  1308.  
  1309.                                  PAGE 24
  1310.  
  1311.  - Start DiskExpander for the selected device. The parameter "PACK" must
  1312.    be turned on, as well as the parameter "UNPACK". Enter the name of the
  1313.    new library into the string gadget "LIBRARY". All other parameters are
  1314.    without importance and should keep their values.
  1315.  
  1316.  - Start the program DevicePacker, preferably from the Workbench, and
  1317.    select the device, the directory or even a single file.
  1318.  
  1319.  - Start the compression process by clicking on the gadget "Process
  1320.    files".
  1321.  
  1322.  Now, all existing files will be decompressed using the old library and
  1323. then compressed again with the new one. This ensures that your files can
  1324. be packed with the best existing packer, even in the future.
  1325.  
  1326. 5.2. DESTATISTICS
  1327.  
  1328.  To inform you about the practical use of DiskExpander at any time, we
  1329. have included a program called DEStatistics into the program package.
  1330.  
  1331.  This program displays a lot of useful information about a file, for
  1332. example the compression rate and the library used. If you want,
  1333. DEStatistics can be copied to the DiskExpander directory during the
  1334. installation. DEStatistics will display the following values: File name,
  1335. physical and virtual size, compression rate (called pack rate) and the
  1336. name of the library used for the compression. Additionally, the average
  1337. sizes and compression rates are shown, in case DEStatistics is used on a
  1338. group of files.
  1339.  
  1340. *** See fig 7 ***
  1341.  
  1342.  The program DEStatistics can be started from the Workbench as well as
  1343. from the Shell. When started from the workbench, a window with some
  1344. gadgets for controlling the program via mouse appears on screen. Further,
  1345. there is a equivalent menu option for any gadget. The most important
  1346. gadget is the string gadget for the path. Use this string gadget to
  1347. specify the single file or directory on which DEStatistics shall display
  1348. information. As an alternative to typing the path, you can click on the
  1349. folder gadget left to the string gadget. A small file
  1350.  
  1351.                                  PAGE 25
  1352.  
  1353. requester appears on screen and you can select the path via mouse. After
  1354. the path has been set correctly, click over the gadget "Create
  1355. statistics". DEStatistics now reads all the files in the chosen path,
  1356. which can take a little time depending on the number of files. When the
  1357. statistics have been produced, DEStatistics displays the calculated
  1358. values in the central part of the window. In case the directory contains
  1359. more files than can be displayed on screen at the same time, you can use
  1360. the scrollbar, and the direction gadgets to move through the statistics.
  1361. Directly below the single files data, the average values are shown. In
  1362. addition to this, the pack rate is displayed graphically.
  1363.  
  1364.  To allow quick search for specific data, the statistics can be sorted
  1365. according to file name, library name and pack rate. The menu
  1366. "Preferences" contains the corresponding options "By Name", "By Library"
  1367. and "By Pack Rate". When there is no demand for sorting, use the menu
  1368. option "No Sort". A sort according to file name or library name returns
  1369. the list files in alphabetical order of either the file names or the
  1370. library names. A sort according to pack rate returns the files with
  1371. higher pack rates at the top of the list. The default value is "No Sort",
  1372. which displays the files in the order DEStatistics reads them.
  1373.  
  1374.  Use the menu option "Include Subdirs" in the menu "Preferences" to
  1375. select whether the statistics shall contain subdirectories as well. This
  1376. option is on by default.
  1377.  
  1378.  When DEStatistics is started from the shell without additional
  1379. parameters, the user interface window appears on screen. If you start the
  1380. program with path as parameter, the files in that path are read and their
  1381. statistics values will be displayed in the Shell window. This output can
  1382. be redirected to another device, for example to the printer. In this
  1383. case, add the redirection command ">PRT:" to your command line. The whole
  1384. command line looks as follows:
  1385.  
  1386. DEStatistics >PRT: DH0:Pictures
  1387.  
  1388.  Statistics of the files stored in the directory "DH0:Pictures" will be
  1389. produced and then displayed on the printer.
  1390.  
  1391.  If the additional parameter "ALL" is added to the command line,
  1392. DEStatistics will display everything, including the subdirectories. The
  1393. parameter "?" returns a list of parameters possible for a start from
  1394. shell.
  1395.  
  1396.                             6. MISCELLANEOUS
  1397.  
  1398. 6.1. HINTS FOR USING THE PROGRAM
  1399.  
  1400.  This chapter contains some hints that might be useful when working with
  1401. DiskExpander and the utility programs. Since DiskExpander is a very
  1402. flexible program, and therefore suitable for a lot of purpose, we can not
  1403. propose the optimal solution for any possible purpose. We recommend
  1404. experimenting a bit with the program's features.
  1405.  
  1406.  You should, for example, find out the compression library that is best
  1407. suited for your specific purpose by testing all the libraries that come
  1408. along with DiskExpander. This may be a different
  1409.  
  1410.                                  PAGE 26
  1411.  
  1412. library for any device or hard disk partition, depending on the kind of
  1413. file stored there. The best way to find out the right library is the
  1414. combined use of DiskExpander and DEStatistics. Use DiskExpander to
  1415. compress all files on the device with the library you want to test. Then
  1416. use DEStatistics to compare the average pack rate with those of the other
  1417. libraries. the library returning the best values should be the one of
  1418. your choice for this device.
  1419.  
  1420.  If you want to start DiskExpander on demand instead of having it started
  1421. automatically by the Startup-Sequence, there is a comfortable solution
  1422. which makes it easy to install or remove DiskExpander for a specified
  1423. device. In this situation, the use of some icons on the Workbench is a
  1424. good idea. As already explained in Chapter 3.2. ("Start from the
  1425. Workbench"), ToolTypes may serve to set the different program parameters.
  1426. So it is useful to create an icon for installing DiskExpander on a device
  1427. and another icon for removing it. You may, of course, create any number
  1428. of icons for other purposes simply by copying from the folder DEIcons and
  1429. renaming them afterwards. Please note that the main program DiskExpander
  1430. only needs to be stared on the device once. A new copy of the program for
  1431. every icon is not needed.
  1432.  
  1433.  It is important to know that some files must not be compressed by
  1434. DiskExpander. These include Startup-Sequence, the System-Configuration,
  1435. the main file DiskExpander, the needed handler files stored in the
  1436. directory L: and the pack libraries. In most cases, these files are
  1437. stored on the boot device. To ensure that files will not be compressed by
  1438. mistake, perform the following steps for the boot device: First install
  1439. DiskExpander on the boot device using the pack library of your choice.
  1440. The option PACK must be activated. Now compress all the files on the
  1441. device using DevicePacker. Since the option "Forbidden files" is on by
  1442. default, only those files that are allowed to will be compressed.
  1443.  
  1444.  When this process is finished successfully, all files will be compressed
  1445. except the ones that are "forbidden". Start DiskExpander and select the
  1446. boot device again. Turn on the option UNPACK and, this is very important,
  1447. turn off the option PACK. Write this setup to the Startup-Sequence via
  1448. "Modify Startup". From now on, no data on the boot device will be packed
  1449. anymore, since the files are already compressed.
  1450.  
  1451.  A last note referring to the use of DiskExpander with packers like LHA
  1452. and Zoo: It is of course, possible to use packers along with
  1453. DiskExpander, but it is necessary to turn the options "Exam" and "ExNext"
  1454. on. The packer programs compare the decompressed file size with the size
  1455. of the file they produce to calculate their pack rate. This pack rate
  1456. will note be correct if the two options are turned off.
  1457.  
  1458.  Some programs like "PasTEX", "Multiview", "Amiback 2.0B" and "Directory
  1459. Opus 3.42" show problems concerning the "Exam" and "ExNext" option of
  1460. DiskExpander. This is not a malfunction of "DiskExpander". We recommend
  1461. to leave "ExNext" and "Exam" turned on generally to guarantee the
  1462. cooperation between various programs and "DE".
  1463.  
  1464.                                  PAGE 27
  1465.  
  1466. 6.2. SPECIAL NOTE TO KICKSTART 1.2/1.3 OWNERS
  1467.  
  1468.  Under the previous versions of kickstart the TrackDisk.device does not
  1469. work correctly all the time. the most common error that may occur is that
  1470. your Amiga does not want to read your original diskette and opens an
  1471. requester with the following statement:
  1472.  
  1473.                INSERT DISPEXPANDER ORIGINAL-DISK IN UNIT 0
  1474.  
  1475.  In this case we recommend to incorporate the call of TrackSalve into
  1476. your Startup-Sequence. TrackSalve can be found in the "InstallData"
  1477. drawer on your DiskExpander original disk and should be run with the
  1478. following option:
  1479.  
  1480.   TRACKSALVE A
  1481.  
  1482.  Your original diskette will now be accepted without any problem.
  1483.  
  1484. 6.3. FUTURE ENHANCEMENTS
  1485.  
  1486.  DiskExpander is being continuously  upgraded. We plan to release version
  1487. 3.0 of the program which will contain a lot of interesting  new features.
  1488. Some of these features we plan on including are:
  1489.  
  1490. COMPRESSION METHOD ADJUSTABLE FOR SINGLE DIRECTORIES
  1491.  
  1492.  This makes it possible to compress only a part of a device. It also
  1493. allows to compress different directories with different libraries. This
  1494. is extremely useful because most pack algorithms were developed with a
  1495. specific kind of data in mind (e.g. text or graphics). This feature will
  1496. make it possible to pack a directory containing graphics with a library
  1497. developed especially for that purpose.
  1498.  
  1499. NEW PACK ALGORITHMS
  1500.  
  1501.  New routines for compression and decompression have been developed.
  1502. These new routines often work faster or more efficient than old ones. We
  1503. aim to include these new packers in the DiskExpander package.
  1504.  
  1505. AREXX PORT IMPLEMENTATION
  1506.  
  1507.  The programming language ARexx allows DiskExpander's parameters to be
  1508. changed from inside other programs. this is a major increase in
  1509. flexibility.
  1510.  
  1511. FUTURE UTILITY PROGRAMS
  1512.  
  1513.  We plan to include, a program for defragmenting the hard disk. This
  1514. program would be able to clean up the whole disk and increase access time
  1515. by optimally rearranging the files.
  1516.  
  1517. LHA ARCHIVES
  1518.  
  1519.  We also plan to integrate the option of LHA archives into DiskExpander.
  1520.  
  1521.                                  PAGE 28
  1522.  
  1523. 6.4. REGISTRATION
  1524.  
  1525.  Any owner of DiskExpander who returns the registration card will
  1526. automatically be informed about new versions of the program. There will
  1527. also be the possibility to receive updates. Register your program copy,
  1528. because this allows us to inform you about the further development of
  1529. DiskExpander. Please enter your personal data correctly. If you
  1530. intentionally enter a nonsense name, you will lose the right to obtain
  1531. updates.
  1532.  
  1533.  In case you have any ideas for additional program functions or
  1534. enhancement of existing functions, please feel free to contact us. If
  1535. your idea can be realized, we will include them in future versions of
  1536. DiskExpander.
  1537.  
  1538.                                  PAGE 29
  1539.  
  1540.  
  1541.